home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 4 / ETO Development Tools 4.iso / Tools - Objects / MacApp / MacApp 3.0a2 / CPlusIncludes / Power.h < prev    next >
Text File  |  1991-05-01  |  3KB  |  122 lines

  1. /************************************************************
  2.  
  3. Created: Sunday, January 6, 1991 at 9:37 PM
  4.     Power.h
  5.     C Interface to the Macintosh Libraries
  6.  
  7.  
  8.         Copyright Apple Computer, Inc.    1989-1990
  9.         All rights reserved
  10.  
  11. ************************************************************/
  12.  
  13.  
  14. #ifndef __POWER__
  15. #define __POWER__
  16.  
  17. #ifndef __TYPES__
  18. #include <Types.h>
  19. #endif
  20.  
  21.  
  22. enum {
  23.  
  24.  
  25. /* Bit positions for ModemByte */
  26.     modemOnBit = 0,
  27.     ringWakeUpBit = 2,
  28.     modemInstalledBit = 3,
  29.     ringDetectBit = 4,
  30.     modemOnHookBit = 5,
  31.  
  32. /* masks for ModemByte */
  33.     modemOnMask = 0x1,
  34.     ringWakeUpMask = 0x4,
  35.     modemInstalledMask = 0x8,
  36.     ringDetectMask = 0x10,
  37.     modemOnHookMask = 0x20,
  38.  
  39. /* bit positions for BatteryByte */
  40.     chargerConnBit = 0,
  41.     hiChargeBit = 1,
  42.     chargeOverFlowBit = 2,
  43.     batteryDeadBit = 3,
  44.     batteryLowBit = 4,
  45.     connChangedBit = 5,
  46.  
  47. /* masks for BatteryByte */
  48.     chargerConnMask = 0x1,
  49.     hiChargeMask = 0x2,
  50.     chargeOverFlowMask = 0x4,
  51.     batteryDeadMask = 0x8
  52. };
  53. enum {
  54.     batteryLowMask = 0x10,
  55.     connChangedMask = 0x20,
  56.  
  57. /* commands to SleepQRec sleepQProc */
  58.     sleepRequest = 1,
  59.     sleepDemand = 2,
  60.     sleepWakeUp = 3,
  61.     sleepRevoke = 4,
  62.  
  63. /* SleepQRec.sleepQFlags */
  64.     noCalls = 1,
  65.     noRequest = 2,
  66.  
  67.     slpQType = 16,
  68.     sleepQType = 16
  69. };
  70.  
  71. typedef char ModemByte;
  72. typedef char BatteryByte;
  73.  
  74. typedef long PMResultCode;
  75.  
  76. struct SleepQRec {
  77.     struct SleepQRec *sleepQLink;
  78.     short sleepQType;       /*type = 16*/
  79.     ProcPtr sleepQProc;     /*Pointer to sleep routine*/
  80.     short sleepQFlags;
  81. };
  82.  
  83. typedef struct SleepQRec SleepQRec;
  84. typedef SleepQRec *SleepQRecPtr;
  85.  
  86.  
  87. #ifdef __cplusplus
  88. extern "C" {
  89. #endif
  90. pascal OSErr DisableWUTime(void); 
  91. pascal OSErr GetWUTime(long& WUTime,Byte& WUFlag); 
  92. pascal OSErr SetWUTime(long WUTime); 
  93. pascal OSErr BatteryStatus(Byte& Status,Byte& Power); 
  94. pascal OSErr ModemStatus(Byte& Status); 
  95. pascal long IdleUpdate(void)
  96.     = 0xA285; 
  97. pascal long GetCPUSpeed(void)
  98.     = {0x70FF,0xA485}; 
  99. pascal void EnableIdle(void)
  100.     = {0x7000,0xA485}; 
  101. pascal void DisableIdle(void)
  102.     = {0x7001,0xA485}; 
  103. pascal void SleepQInstall(SleepQRecPtr qRecPtr)
  104.     = {0x205F,0xA28A}; 
  105. pascal void SleepQRemove(SleepQRecPtr qRecPtr)
  106.     = {0x205F,0xA48A}; 
  107. pascal void AOn(void)
  108.     = {0x7004,0xA685}; 
  109. pascal void AOnIgnoreModem(void)
  110.     = {0x7005,0xA685}; 
  111. pascal void BOn(void)
  112.     = {0x7000,0xA685}; 
  113. pascal void AOff(void)
  114.     = {0x7084,0xA685}; 
  115. pascal void BOff(void)
  116.     = {0x7080,0xA685}; 
  117. #ifdef __cplusplus
  118. }
  119. #endif
  120.  
  121. #endif
  122.